ob_set_subtarget(ob_storage blocksstable
  blocksstable/ob_block_cache_working_set.cpp
  blocksstable/ob_block_index_intermediate.cpp
  blocksstable/ob_block_mark_deletion_maker.cpp
  blocksstable/ob_block_sstable_struct.cpp
  blocksstable/ob_bloom_filter_cache.cpp
  blocksstable/ob_bloom_filter_data_reader.cpp
  blocksstable/ob_bloom_filter_data_writer.cpp
  blocksstable/ob_column_map.cpp
  blocksstable/ob_data_buffer.cpp
  blocksstable/ob_fuse_row_cache.cpp
  blocksstable/ob_imicro_block_reader.cpp
  blocksstable/ob_lob_data_reader.cpp
  blocksstable/ob_lob_data_writer.cpp
  blocksstable/ob_lob_merge_writer.cpp
  blocksstable/ob_lob_micro_block_index_reader.cpp
  blocksstable/ob_local_file_system.cpp
  blocksstable/ob_macro_block.cpp
  blocksstable/ob_macro_block_checker.cpp
  blocksstable/ob_macro_block_common_header.cpp
  blocksstable/ob_macro_block_id.cpp
  blocksstable/ob_macro_block_reader.cpp
  blocksstable/ob_macro_block_struct.cpp
  blocksstable/ob_macro_block_writer.cpp
  blocksstable/ob_meta_block_reader.cpp
  blocksstable/ob_micro_block_cache.cpp
  blocksstable/ob_micro_block_index_cache.cpp
  blocksstable/ob_micro_block_index_mgr.cpp
  blocksstable/ob_micro_block_index_reader.cpp
  blocksstable/ob_micro_block_index_transformer.cpp
  blocksstable/ob_micro_block_index_writer.cpp
  blocksstable/ob_micro_block_reader.cpp
  blocksstable/ob_sparse_micro_block_reader.cpp
  blocksstable/ob_micro_block_row_exister.cpp
  blocksstable/ob_micro_block_row_getter.cpp
  blocksstable/ob_micro_block_row_scanner.cpp
  blocksstable/ob_micro_block_row_lock_checker.cpp
  blocksstable/ob_micro_block_scanner.cpp
  blocksstable/ob_micro_block_writer.cpp
  blocksstable/ob_raid_file_system.cpp
  blocksstable/ob_row_cache.cpp
  blocksstable/ob_row_reader.cpp
  blocksstable/ob_row_writer.cpp
  blocksstable/ob_sparse_cell_reader.cpp
  blocksstable/ob_sparse_cell_writer.cpp
  blocksstable/ob_sstable_printer.cpp
  blocksstable/ob_storage_cache_suite.cpp
  blocksstable/ob_store_file.cpp
  blocksstable/ob_store_file_system.cpp
  blocksstable/ob_super_block_buffer_holder.cpp
  blocksstable/ob_tmp_file_store.cpp
  blocksstable/ob_tmp_file_cache.cpp
  blocksstable/ob_tmp_file.cpp
  blocksstable/ob_row_queue.cpp
  blocksstable/slog/ob_base_storage_logger.cpp
  blocksstable/slog/ob_storage_log_reader.cpp
  blocksstable/slog/ob_storage_log_replayer.cpp
  blocksstable/slog/ob_storage_log_struct.cpp
  blocksstable/slog/ob_storage_log_writer.cpp
)

ob_set_subtarget(ob_storage compaction
  compaction/ob_column_checksum_calculator.cpp
  compaction/ob_micro_block_iterator.cpp
  compaction/ob_partition_merge.cpp
  compaction/ob_partition_merge_builder.cpp
  compaction/ob_partition_merge_util.cpp
)

ob_set_subtarget(ob_storage gts
  gts/ob_ha_gts.cpp
  gts/ob_ha_gts_mgr.cpp
  gts/ob_ha_gts_source.cpp
)

ob_set_subtarget(ob_storage memtable
  memtable/mvcc/ob_keybtree.cpp
  memtable/mvcc/ob_multi_version_iterator.cpp
  memtable/mvcc/ob_mvcc_ctx.cpp
  memtable/mvcc/ob_mvcc_engine.cpp
  memtable/mvcc/ob_mvcc_iterator.cpp
  memtable/mvcc/ob_mvcc_row.cpp
  memtable/mvcc/ob_mvcc_trans_ctx.cpp
  memtable/mvcc/ob_query_engine.cpp
  memtable/mvcc/ob_row_data.cpp
  memtable/mvcc/ob_row_lock.cpp
  memtable/ob_lock_wait_mgr.cpp
  memtable/ob_memtable.cpp
  memtable/ob_memtable_array.cpp
  memtable/ob_memtable_compact_writer.cpp
  memtable/ob_memtable_context.cpp
  memtable/ob_memtable_interface.cpp
  memtable/ob_memtable_iterator.cpp
  memtable/ob_memtable_sparse_iterator.cpp
  memtable/ob_memtable_mutator.cpp
  memtable/ob_memtable_row_reader.cpp
  memtable/ob_redo_log_generator.cpp
  memtable/ob_row_compactor.cpp
)

ob_set_subtarget(ob_storage common
  ob_all_micro_block_range_iterator.cpp
  ob_all_server_tracer.cpp
  ob_block_sample_iterator.cpp
  ob_build_index_scheduler.cpp
  ob_build_index_task.cpp
  ob_migrate_retry_queue_thread.cpp
  ob_callback_queue_thread.cpp
  ob_slog_writer_queue_thread.cpp
  ob_col_map.cpp
  ob_data_macro_id_iterator.cpp
  ob_data_storage_info.cpp
  ob_dml_param.cpp
  ob_dup_replica_checker.cpp
  ob_freeze_async_task.cpp
  ob_file_system_router.cpp
  ob_file_system_util.cpp
  ob_freeze_info_snapshot_mgr.cpp
  ob_garbage_collector.cpp
  ob_i_partition_base_data_reader.cpp
  ob_i_sample_iterator.cpp
  ob_i_store.cpp
  ob_i_table.cpp
  ob_index_merge.cpp
  ob_interm_macro_mgr.cpp
  ob_locality_manager.cpp
  ob_long_ops_monitor.cpp
  ob_macro_block_iterator.cpp
  ob_micro_block_handle_mgr.cpp
  ob_micro_block_index_handle_mgr.cpp
  ob_migrate_logic_row_writer.cpp
  ob_migrate_macro_block_writer.cpp
  ob_ms_row_iterator.cpp
  ob_multi_version_col_desc_generate.cpp
  ob_multi_version_table_store.cpp
  ob_multiple_get_merge.cpp
  ob_fuse_row_cache_fetcher.cpp
  ob_multiple_merge.cpp
  ob_multiple_multi_scan_merge.cpp
  ob_multiple_scan_merge.cpp
  ob_multiple_scan_merge_impl.cpp
  ob_partition_base_data_ob_reader.cpp
  ob_partition_base_data_oss_reader.cpp
  ob_partition_base_data_restore_reader.cpp
  ob_partition_base_data_backup.cpp
  ob_partition_base_data_physical_restore.cpp
  ob_partition_base_data_validate.cpp
  ob_partition_base_data_validate.h
  ob_partition_base_data_backup_backupset.h
  ob_partition_base_data_backup_backupset.cpp
  ob_backup_archive_log.h
  ob_backup_archive_log.cpp
  ob_partition_checkpoint.cpp
  ob_partition_component_factory.cpp
  ob_partition_freeze_record.cpp
  ob_partition_group.cpp
  ob_partition_group_lock.cpp
  ob_partition_log.cpp
  ob_partition_loop_worker.cpp
  ob_partition_memstore_info_record.cpp
  ob_partition_range_spliter.cpp
  ob_partition_parallel_merge_ctx.cpp
  ob_partition_merge_task.cpp
  ob_partition_meta_block_reader.cpp
  ob_partition_meta_redo_module.cpp
  ob_partition_migrate_old_rpc.cpp
  ob_partition_migration_status.cpp
  ob_partition_migrator_table_key_mgr.cpp
  ob_partition_migrator.cpp
  ob_partition_backup.cpp
  ob_rebuild_scheduler.cpp
  ob_partition_scheduler.cpp
  ob_partition_schema_recorder.cpp
  ob_clog_cb_async_worker.cpp
  ob_partition_service.cpp
  ob_partition_service_rpc.cpp
  ob_partition_split.cpp
  ob_partition_split_task.cpp
  ob_partition_split_worker.cpp
  ob_partition_storage.cpp
  ob_partition_store.cpp
  ob_partition_worker.cpp
  ob_trans_checkpoint_worker.cpp
  ob_pg_index.cpp
  ob_pg_log.cpp
  ob_pg_memtable_mgr.cpp
  ob_pg_mgr.cpp
  ob_pg_partition.cpp
  ob_pg_storage.cpp
  ob_query_iterator_factory.cpp
  ob_query_iterator_util.cpp
  ob_range_iterator.cpp
  ob_range_purger.cpp
  ob_range_skip.cpp
  ob_relative_table.cpp
  ob_replay_status.cpp
  ob_row_fuse.cpp
  ob_row_sample_iterator.cpp
  ob_saved_storage_info.cpp
  ob_saved_storage_info_v2.cpp
  ob_scan_merge_loser_tree.cpp
  ob_single_merge.cpp
  ob_sstable.cpp
  ob_sstable_struct.cpp
  ob_sstable_estimator.cpp
  ob_sstable_merge_info_mgr.cpp
  ob_sstable_multi_version_row_iterator.cpp
  ob_sstable_row_exister.cpp
  ob_sstable_row_getter.cpp
  ob_sstable_row_iterator.cpp
  ob_sstable_row_multi_exister.cpp
  ob_sstable_row_multi_getter.cpp
  ob_sstable_row_multi_scanner.cpp
  ob_sstable_row_scanner.cpp
  ob_sstable_row_whole_scanner.cpp
  ob_sstable_rowkey_helper.cpp
  ob_storage_struct.cpp
  ob_store_row_filter.cpp
  ob_table_mgr.cpp
  ob_table_scan_iterator.cpp
  ob_table_store.cpp
  ob_table_store_stat_mgr.cpp
  ob_tenant_config_meta_block_reader.cpp
  ob_tenant_config_mgr.cpp
  ob_tenant_meta_memory_mgr.cpp
  ob_value_row_iterator.cpp
  ob_warm_up.cpp
  ob_warm_up_request.cpp
  ob_base_storage_info.cpp
  ob_sstable_row_lock_checker.cpp
  ob_sstable_garbage_collector.cpp
  ob_wrs_utils.cpp
  ob_macro_meta_replay_map.cpp
  ob_pg_meta_block_writer.cpp
  ob_pg_meta_block_reader.cpp
  ob_pg_macro_meta_checkpoint_reader.cpp
  ob_pg_macro_meta_checkpoint_writer.cpp
  ob_pg_meta_checkpoint_writer.cpp
  ob_pg_meta_checkpoint_reader.cpp
  ob_pg_all_meta_checkpoint_writer.cpp
  ob_pg_all_meta_checkpoint_reader.cpp
  ob_server_pg_meta_checkpoint_writer.cpp
  ob_server_pg_meta_checkpoint_reader.cpp
  ob_server_checkpoint_writer.cpp
  ob_server_checkpoint_log_reader.cpp
  ob_tenant_config_meta_checkpoint_writer.cpp
  ob_tenant_config_meta_checkpoint_reader.cpp
  ob_tenant_file_super_block_checkpoint_writer.cpp
  ob_tenant_file_super_block_checkpoint_reader.cpp
  ob_tenant_file_pg_meta_checkpoint_reader.cpp
  ob_tenant_file_pg_meta_checkpoint_writer.cpp
  ob_tenant_file_checkpoint_writer.cpp
  ob_tenant_file_checkpoint_reader.cpp
  ob_pg_sstable_mgr.cpp
  ob_tenant_file_struct.cpp
  ob_server_log.cpp
  ob_tenant_file_mgr.cpp
  ob_pg_sstable_garbage_collector.cpp
  ob_pg_memory_garbage_collector.cpp
  ob_auto_part_scheduler.cpp
  ob_sstable_dump_error_info.cpp
  ob_reserved_data_mgr.cpp
  ob_partition_group_create_checker.cpp
  ob_dag_warning_history_mgr.cpp
)

ob_set_subtarget(ob_storage backup
  backup/ob_partition_backup_struct.cpp
  backup/ob_partition_base_data_physical_restore_v2.cpp
)

ob_set_subtarget(ob_storage replayengine
  replayengine/ob_log_replay_engine.cpp
)

ob_set_subtarget(ob_storage transaction
  transaction/ob_clog_adapter.cpp
  transaction/ob_dup_table.cpp
  transaction/ob_dup_table_rpc.cpp
  transaction/ob_gc_partition_adapter.cpp
  transaction/ob_gts_local_cache.cpp
  transaction/ob_gts_mgr.cpp
  transaction/ob_gts_msg.cpp
  transaction/ob_gts_response_handler.cpp
  transaction/ob_gts_rpc.cpp
  transaction/ob_gts_source.cpp
  transaction/ob_gts_task_queue.cpp
  transaction/ob_gts_worker.cpp
  transaction/ob_ha_gts_source.cpp
  transaction/ob_i_weak_read_service.cpp
  transaction/ob_location_adapter.cpp
  transaction/ob_lts_source.cpp
  transaction/ob_mask_set.cpp
  transaction/ob_tenant_weak_read_cluster_service.cpp
  transaction/ob_tenant_weak_read_cluster_version_mgr.cpp
  transaction/ob_tenant_weak_read_server_version_mgr.cpp
  transaction/ob_tenant_weak_read_service.cpp
  transaction/ob_tenant_weak_read_stat.cpp
  transaction/ob_time_wheel.cpp
  transaction/ob_trans_audit_record_mgr.cpp
  transaction/ob_trans_coord_ctx.cpp
  transaction/ob_trans_ctx.cpp
  transaction/ob_trans_ctx_lock.cpp
  transaction/ob_trans_ctx_mgr.cpp
  transaction/ob_trans_define.cpp
  transaction/ob_trans_dependency.cpp
  transaction/ob_trans_elr_task.cpp
  transaction/ob_trans_end_trans_callback.cpp
  transaction/ob_trans_event.cpp
  transaction/ob_trans_factory.cpp
  transaction/ob_trans_listener_handler.cpp
  transaction/ob_trans_log.cpp
  transaction/ob_trans_memory_stat.cpp
  transaction/ob_trans_migrate_worker.cpp
  transaction/ob_trans_msg.cpp
  transaction/ob_trans_msg2.cpp
  transaction/ob_trans_part_ctx.cpp
  transaction/ob_trans_partition_stat.cpp
  transaction/ob_trans_result.cpp
  transaction/ob_trans_result_info_mgr.cpp
  transaction/ob_trans_rpc.cpp
  transaction/ob_trans_sche_ctx.cpp
  transaction/ob_trans_service.cpp
  transaction/ob_trans_slave_ctx.cpp
  transaction/ob_trans_split_adapter.cpp
  transaction/ob_trans_stat.cpp
  transaction/ob_trans_submit_log_cb.cpp
  transaction/ob_trans_timer.cpp
  transaction/ob_trans_version_mgr.cpp
  transaction/ob_ts_mgr.cpp
  transaction/ob_weak_read_util.cpp
  transaction/ob_weak_read_service.cpp
  transaction/ob_weak_read_service_rpc.cpp
  transaction/ob_weak_read_service_rpc_define.cpp
  transaction/ob_trans_task_worker.cpp
  transaction/ob_trans_status.cpp
  transaction/ob_trans_msg_handler.cpp
  transaction/ob_xa_trans_heartbeat_worker.cpp
  transaction/ob_xa_trans_service.cpp
  transaction/ob_xa_rpc.cpp
  transaction/ob_xa_inner_table_gc_worker.cpp
)

ob_server_add_pchs(storage
  transaction/ob_trans_define.h
  transaction/ob_i_ts_source.h
  ob_col_map.h
  ob_query_iterator_factory.h
  ob_i_store.h
  ob_base_storage_info.h
  blocksstable/ob_macro_block_id.h
  blocksstable/ob_macro_block_common_header.h
  blocksstable/ob_block_sstable_struct.h
  ob_i_table.h
  blocksstable/ob_data_buffer.h
  blocksstable/slog/ob_storage_log_struct.h
  blocksstable/slog/ob_storage_log_replayer.h
  blocksstable/slog/ob_storage_log_writer.h
  blocksstable/slog/ob_base_storage_logger.h
  blocksstable/ob_row_reader.h
  blocksstable/ob_column_map.h
  blocksstable/ob_micro_block_index_mgr.h
  ob_file_system_router.h
  blocksstable/ob_micro_block_reader.h
  blocksstable/ob_imicro_block_reader.h
  ob_macro_meta_replay_map.h
  blocksstable/ob_sparse_micro_block_reader.h
  blocksstable/ob_store_file_system.h
  blocksstable/ob_macro_block_reader.h
  blocksstable/ob_macro_block_checker.h
  blocksstable/ob_super_block_buffer_holder.h
  blocksstable/ob_store_file.h
  blocksstable/ob_macro_block_struct.h
  blocksstable/ob_local_file_system.h
  memtable/mvcc/ob_row_lock.h
  memtable/mvcc/ob_row_latch.h
  memtable/mvcc/ob_mvcc_row.h
  ob_storage_log_type.h
  ob_data_storage_info.h
  memtable/ob_memtable_key.h
  memtable/mvcc/ob_keybtree.h
  memtable/ob_row_compactor.h
  memtable/ob_mt_hash.h
  memtable/mvcc/ob_row_data.h
  memtable/mvcc/ob_query_engine.h
  ob_saved_storage_info_v2.h
  memtable/ob_memtable_interface.h
  memtable/mvcc/ob_mvcc_trans_ctx.h
  memtable/mvcc/ob_mvcc_iterator.h
  memtable/mvcc/ob_mvcc.h
  memtable/mvcc/ob_mvcc_engine.h
  memtable/mvcc/ob_mvcc_ctx.h
  memtable/mvcc/ob_multi_version_iterator.h
  blocksstable/ob_row_cache.h
  blocksstable/ob_micro_block_index_reader.h
  blocksstable/ob_fuse_row_cache.h
  ob_saved_storage_info.h
  blocksstable/ob_micro_block_index_transformer.h
  blocksstable/ob_storage_cache_suite.h
  blocksstable/ob_micro_block_index_cache.h
  blocksstable/ob_micro_block_cache.h
  blocksstable/ob_bloom_filter_cache.h
  blocksstable/ob_block_cache_working_set.h
  ob_storage_struct.h
  ob_partition_split.h
  ob_non_trans_log.h
  ob_dml_param.h
  ob_warm_up_request.h
  blocksstable/ob_row_writer.h
  ob_partition_service_rpc.h
  ob_partition_migrate_old_rpc.h
  transaction/ob_trans_result.h
  ob_tenant_file_struct.h
  ob_resource_map.h
  blocksstable/ob_tmp_file_store.h
  blocksstable/ob_tmp_file.h
  blocksstable/ob_tmp_file_cache.h
)

ob_server_add_target(ob_storage)
